import pandas as pd

df1 = pd.DataFrame(
    [{"r1": 'a', "r2": 1, "symbol": "s1"},
     {"r1": "a", "r2": 2, "symbol": "s2"},
     {"r1": "c", "r2": 2, "symbol": "s3"},
     ]
)

df2 = pd.DataFrame(
    [{"r1": 'a', "r3": 1, "symbol": "s1"},
     {"r1": "c", "r3": 2, "symbol": "s3"},
     {"r1": "d", "r3": 3, "symbol": "s3"}
     ]
)


df = pd.merge(df1, df2.loc[:,["r1", "r3"]], how="left", on="r1")
print(df)